1. Technical Field
The present invention relates to ensuring consistency of a group of objects in a computing system. More particularly, the invention concerns ensuring consistency of a group of objects in a computing system during a period of time.
2. Description of Related Art
In modern computing systems, information is often backed up, archived, or migrated. As an example, information, such as data objects, may be backed up, archived, or migrated from client nodes in a computer network. A storage-management software application, such as Thiol Storage Manager (TM), which is available from International Business Machines Corporation, may provide a repository for the information that is backed up, archived, or migrated. Additionally, a storage-management server may be used to store data objects in one or more storage repositories, and may have a database for tracking information about the stored files.
Groups of objects (which, for example may be files) may be backed up, archived, migrated, or manipulated as a single logical entity (also called a logical group). For example, a group of objects may comprise a logical entity, such as a Database, at a time to (beginning of backup). This logical group may be defined as a point-in-time view of the objects in the group at the time t1. Because it takes a period of time to back up all of the objects in a logical group, the logical group may become inconsistent before the backup is completed at a time t2 (end of backup). The group may become inconsistent due to changes in values of attributes of existing members of the group, or due to adding or deleting members of the group, in comparison with the point-in-time view of the group at time t1.
When information is backed up, archived, or migrated, consistency of a logical group must be maintained over a time period between the time that the members of the group are defined, and the time the group is stored on the backup storage. If the logical group becomes inconsistent during that time period, the logical group becomes invalid. For example, for backups of data files used by application servers such as WebSphere (available from International Business Machines Corporation), and for database application logical group backups, if the data and/or files in a group change during a backup, then the group becomes inconsistent, and an application dependant on the data may not function correctly.
A limited number of file systems include an agent or service, such as the Tivoli Logical Volume Snapshot Agent available from International Business Machines Corporation, or the Volume Shadow Services available from Microsoft Corporation, which have the ability to take “point-in-time” snapshots of all of the files in a file system, and which could be utilized when determining consistency of files. However, this snapshot capability is not widely available, and has limited usefulness because it cannot be used to obtain a snapshot of only a subset of files in a filesystem, and because it cannot be used with non-file data (for example, raw data).
Known techniques for performing backups must rely on application programs (for example, database applications) to guarantee data consistency. This application specific approach is generally inefficient because it is very specific and requires in depth knowledge of the way the application operates, and because it also requires an interface to the application. Additionally, known techniques are only able to ensure consistency of a single file. Consequently, known techniques are inadequate for ensuring that values of attributes of existing members of a logical group have not changed, or for ensuring that members of the logical group have not been added or deleted, during a time period of interest, for example, during the time required to perform a data backup.